package cn.lingyangwl.agile.infra.dict.assembly;

import cn.lingyangwl.agile.model.BaseAssembly;
import cn.lingyangwl.agile.infra.dict.model.DictExcel;
import cn.lingyangwl.agile.infra.dict.model.DictItemExcel;
import cn.lingyangwl.agile.infra.module.dict.model.rqrs.DictItemResp;
import cn.lingyangwl.agile.infra.module.dict.model.rqrs.DictResp;
import cn.lingyangwl.agile.infra.module.dict.model.entity.Dict;
import cn.lingyangwl.agile.infra.module.dict.model.entity.DictItem;
import org.mapstruct.Mapper;

/**
 * @author shenguangyang
 */
@Mapper(componentModel = "spring")
public interface DictAssembly extends BaseAssembly {
    DictResp toDictResp(Dict source);
    DictItemResp toDictItemResp(DictItem source);

    DictItem toDictItem(DictItemResp source);
    DictItem toDictItem(DictItemExcel source);

    Dict toDict(DictResp source);
    Dict toDict(DictExcel source);

    DictExcel toExcel(Dict source);

    DictItemExcel toExcel(DictItem source);
}
